---
title: SAIF.Application.Claim.Legal overview
summary: High-level purpose, scope, and responsibilities for the Legal-claim application (AppManager) tier.
status: draft
owner: SAIF Documentation Pipeline
last_reviewed: 2026-08-21
library: SAIF.Application.Claim.Legal
reference_type: embedded
---

# SAIF.Application.Claim.Legal overview

> **Documentation context:** Front-End Application Component
> **Documented via:** Legal (`Legal\Legal.vbproj`)

`SAIF.Application.Claim.Legal` is the Application/orchestration ("AppManager") tier for legal-case (WCB/DCBS appeal) management. It sits directly beneath the `Legal\` web front end and directly above the `SAIF.Business.Claim.Legal` business-object tier, translating UI screen actions into business-object CRUD calls, applying screen-level validation and authorization, and bridging to external systems (Guidewire, Appworx print batch) and application-layer Oracle SQL.

## Purpose
- Provide one `*Manager` class per Legal screen/workflow area (Assignment, Appeal, Board Log, Case Cost, Case Notes, Case Search, Create File, Mail Date, Other Parties, Outcome, Quick Cal, Request, Schedule, Summary, Update Case, and Attorney/Hearing-Location/Person maintenance) that translates UI actions into business-object retrieve/save calls, applies page-specific validation and business rules, and enforces screen- and claim-level authorization.
- Consumed directly by the `Legal\` web front end (`Legal.vbproj`) as the application-layer entry point for all legal-case management screens*.

## Responsibilities
- Manage legal-case context selection and creation (`SetCurrentCase`, `CreateCase`, `OnContextChanged`) and propagate state to consolidated (secondary) cases.
- Enforce claim-level view/conflict/exposure authorization (`LegalManagerBase.OnRetrieve`) and note-level authorization (`clsCaseNotesManager`).
- Execute a small set of application-layer (non-`IBusinessCriteria`) Oracle SQL statements and stored-procedure calls (`pk80001_LEGALNET`/`pk80001_legalNet`) directly from manager classes.
- Cache largely-static code-table lookups in `HttpContext.Current.Cache` for 8 hours to reduce Oracle round-trips.
- Integrate with external systems: Appworx batch print submission for letters, and Guidewire claim-system REST APIs for matter/activity/WCD-number sync.

## Key components
- `LegalManagerBase`: Shared base class for all 22 concrete managers — case-context lifecycle, claim-level authorization, consolidated-case propagation, and the direct `insertLetterRequest` stored-procedure call.
- `clsLegalData`: Lightweight read-only header holder for a legal case, loaded via the `pk80001_legalNet.getHeader` stored procedure; inherits `clsBusinessBase`† (`SAIF.Framework.Core`).
- 22 concrete `*Manager` classes (e.g., `clsAppealManager`, `clsScheduleManager`, `clsRequestManager`, `clsAttorneyTableManager`): one per screen/workflow area.
- `GwActivityRequest`, `GwMatterRequest`, `WcdRequest`: DTO/request payload classes for outbound Guidewire API calls.

## Related documentation
- [Index](index.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Security and authorization](security-authorization.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [Stored procedures](procedures/index.md)
- [Configuration](configuration.md)
- [API reference](api/index.md)

> **Note:** Statements marked with `†` are derived from dependency library
> documentation via the Legends CLI. Statements marked with `*` were inferred
> from code structure or contextual evidence.

## Sources
- `SAIF.Application.Claim.Legal\SAIF.Application.Claim.Legal.vbproj`
- `SAIF.Application.Claim.Legal\LegalManagerBase.vb`
- `SAIF.Application.Claim.Legal\clsLegalData.vb`
- `Legal\Legal.vbproj`
